﻿using System;
using System.Collections.Generic;
using System.Text;

namespace BlueLotus7
{
    public interface IMergable<T>
    {
        /// <summary>
        /// Merges object
        /// </summary>
        /// <param name="mergeObject">The object to merge.</param>
        /// <returns>Indicate whether any field changed.</returns>
        bool Merge(T mergeObject);

        /// <summary>
        /// Merges object
        /// </summary>
        /// <param name="mergeObject">The object to merge.</param>
        /// <returns>Indicate whether any field changed.</returns>
        bool MergeWithAudit(T mergeObject);
    }
}
